Spectur | A Speci cation Language for the Programmer
نویسندگان
چکیده
Spectur (Speci cation language after Turing) has been designed as a language for formal speci cation. The goals of the language include: ease of use by a speci er to write a software system speci cation from an informal description; ease of use by an implementor to build a program from a speci cation; ease of understanding by a user as documentation; ease of use by a mathematician to prove program correctness. The Spectur method of specifying a programmodule consists of declaring abstracted data structures, and specifying the procedures and functions of the module in terms of preand post-conditions on those data structures. Spectur is notable for providing notation and data structures that are both mathematically precise and immediately recognizable by programmers. A non-trivial example speci cation of a small operating system has been done using Spectur. We discuss this example, as well as the usefulness and potential applications of Spectur. 1 Formal Speci cation and Spectur The importance of speci cation is understood well by the software engineering community. Speci cations are useful both at the design stage of software development, to help to clarify and to decompose the problem, and later as documentation and as an aid in proving program correctness. A central aim
منابع مشابه
Specifying the modi cation of extended state
This paper explores the interpretation of speci cations in the context of an object-oriented programming language with subclassing and method overrides. In particular, the paper considers annotations for describing what variables a method may change and the interpretation of these annotations. The paper shows that there is a problem to be solved in the speci cation of methods whose overrides ma...
متن کاملA Veriied Vista Implementation Final Report
Specification Implementation Refine Algorithm Figure 1.3: The Re nement Hierarchy concerns whether the algorithm is correct with respect to the abstract speci cation, that is, whether the semantics of a source program is preserved in the code that the algorithm speci es should be produced. By far the majority of compiler correctness work described in the literature is concerned with this form o...
متن کاملPacketTypes: Abstract Speci cation of Network Protocol Messages
In writing networking code, one is often faced with the task of interpreting a raw bu er according to a standardized packet format. This is needed, for example, when monitoring network tra c for speci c kinds of packets, or when unmarshaling an incoming packet for protocol processing. In such cases, a programmer typically writes C code that understands the grammar of a packet and that also perf...
متن کاملBehavioral Interface Speci cation Languages
Behavioral interface speci cation languages allow programmers to express the intended behavior of programs such as functional behavior and resource consumption. Formal speci cations of program behavior is useful for precise documentation, for the generation of test cases and test oracles, for debugging, and for formal program veri cation. In this paper, we survey behavioral interface speci cati...
متن کاملFormal Speciication and Veriication of a Dataaow Processor Array
We describe the formal speci cation and veri cation of the VGI parallel DSP chip [1], which contains 64 compute processors with 30K gates in each processor. Our e ort coincided in time with the \informal" veri cation stage of the chip. By interacting with the designers, we produced an abstract but executable speci cation of the design which embodies the programmer's view of the system. Given th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994